package procesador;

import java.util.LinkedList;
import java.util.List;

public class Consulta implements Cloneable{
	private String nombre;
	private String SQL;
	private List<Campo> campos;
	
	public Consulta() {
		campos = new LinkedList<Campo>();
	}

	/**
	 * @return the nombre
	 */
	public String getNombre() {
		return nombre;
	}

	/**
	 * @param nombre the nombre to set
	 */
	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

	/**
	 * @return the sQL
	 */
	public String getSQL() {
		return SQL;
	}
	
	/**
	 * @return the campos
	 */
	public List<Campo> getCampos() {
		return campos;
	}

	/**
	 * @param campos the campos to set
	 */
	public void setCampos(List<Campo> campos) {
		this.campos = campos;
	}

	/**
	 * @param sql the sQL to set
	 */
	public void setSQL(String sql) {
		SQL = sql;
	}

	public String toString(){
		return nombre + ": " + SQL;
	}
	
	public Object clone(){
		Consulta clon;
		try {
			clon = (Consulta) super.clone();
			clon.campos = new LinkedList<Campo>();
			clon.campos.addAll(this.campos);
			clon.SQL = this.SQL;
			clon.nombre = this.nombre;
			return clon;
		} catch (CloneNotSupportedException e) {
			return null;
		}
		
	}
}
